/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package modelos;

import interfaces.Alimentarce;
import java.util.ArrayList;
import java.util.List;
import modelos_animales.Ballena;
import modelos_animales.Perro;
import modelos_animales.Vaca;
import org.junit.Test;

/**
 *
 * @author javiercruz
 */
public class HacerComerAnimales {
    
    public HacerComerAnimales() {
    }

    @Test
    public void herlosComer(){
        Perro p = new Perro();
        Vaca v = new Vaca();
        Ballena b= new Ballena();
        
        List<Alimentarce> zoologico = new ArrayList<>();
        zoologico.add(b);
        zoologico.add(v);
        zoologico.add(p);
        
//        for(Alimentarce animal : zoologico){
//         animal.comer();   
//         if(animal  instanceof Vaca)
//         {
//             Vaca vacaNueva = (Vaca) animal;
//             vacaNueva.darleche();
//         }
//        }
        
        zoologico.stream().forEach(a ->{//referencia landa cuando se hara referencia a un codigo anonimo.
           String logroComer = a.comer() ? "Lo logro": "no tiene hambre";
           System.out.println(String.format("El animal %s", logroComer));
        });
        
        
    }
}
